﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AvaProvi
{
    class clsInstalacion_CD
    {
        private dsInmoviliario dsInmoviliario;
        private dsInmoviliarioTableAdapters.InstalacionesTableAdapter TAInstalaciones;

        public clsInstalacion_CD()
        {
            dsInmoviliario = new dsInmoviliario();
            dsInmoviliario.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
            dsInmoviliario.DataSetName = "dsInmoviliario";

            //se le debe pasar la conección
            TAInstalaciones = new AvaProvi.dsInmoviliarioTableAdapters.InstalacionesTableAdapter();
            TAInstalaciones.ClearBeforeFill = true;
        }

        public dsInmoviliario.InstalacionesRow RecuperaInstalacion(int IDAvaluo)
        {
            TAInstalaciones.RecuperaInstalacion(this.dsInmoviliario.Instalaciones, IDAvaluo);
            foreach (dsInmoviliario.InstalacionesRow filaInstalacion in this.dsInmoviliario.Instalaciones)
            {
                return filaInstalacion;
            }
            return null;
        }

        public bool CreaNuevaInstalacion(clsInstalacion_CRN objInstalacion)
        {
            int RegistrosAfectado = TAInstalaciones.NuevaInstalacion(
                objInstalacion.EstadoInstHidraulica,
                objInstalacion.TipoInstHidraulica,
                objInstalacion.InstalacionHidraulica,
                objInstalacion.EstadoInstSanitaria,
                objInstalacion.TipoInstSanitario,
                objInstalacion.InstalacionSanitaria,
                objInstalacion.EstadoInstElectrica,
                objInstalacion.TipoInstElectrica,
                objInstalacion.InstalacionElectrica,
                objInstalacion.EstadoInstGas,
                objInstalacion.InstalacionGas,
                objInstalacion.EstadoMueblesBanio,
                objInstalacion.ObsMueblesBanio,
                objInstalacion.EstadoMueblesCocina,
                objInstalacion.ObsMueblesCocina,
                objInstalacion.EstadoHerreria,
                objInstalacion.ObsHerreria,
                objInstalacion.EstadoVidrieria,
                objInstalacion.ObsVidrieria,
                objInstalacion.EstadoCerrajeria,
                objInstalacion.ObsCerrajeria,
                objInstalacion.Fachada,
                objInstalacion.InstalacionEspecial,
                objInstalacion.EstadoTinaco,
                objInstalacion.ObsTinaco,
                objInstalacion.EstadoCalentador,
                objInstalacion.ObsCalentador,
                objInstalacion.EstadoLavadero,
                objInstalacion.ObsLavadero,
                objInstalacion.EstadoCisterna,
                objInstalacion.ObsCisterna,
                objInstalacion.EstadoFosaSeptica,
                objInstalacion.ObsFosaSeptica,
                objInstalacion.Inmueble.Avaluo.IdAvaluo);
            return RegistrosAfectado == 0 ? false : true;
        }

        public bool ModificaInstalacion(clsInstalacion_CRN objInstalacion)
        {
            int RegistrosAfectados = TAInstalaciones.ActualizaInstalacion(
                objInstalacion.EstadoInstHidraulica,
                objInstalacion.TipoInstHidraulica,
                objInstalacion.InstalacionHidraulica,
                objInstalacion.EstadoInstSanitaria,
                objInstalacion.TipoInstSanitario,
                objInstalacion.InstalacionSanitaria,
                objInstalacion.EstadoInstElectrica,
                objInstalacion.TipoInstElectrica,
                objInstalacion.InstalacionElectrica,
                objInstalacion.EstadoInstGas,
                objInstalacion.InstalacionGas,
                objInstalacion.EstadoMueblesBanio,
                objInstalacion.ObsMueblesBanio,
                objInstalacion.EstadoMueblesCocina,
                objInstalacion.ObsMueblesCocina,
                objInstalacion.EstadoHerreria,
                objInstalacion.ObsHerreria,
                objInstalacion.EstadoVidrieria,
                objInstalacion.ObsVidrieria,
                objInstalacion.EstadoCerrajeria,
                objInstalacion.ObsCerrajeria,
                objInstalacion.Fachada,
                objInstalacion.InstalacionEspecial,
                objInstalacion.EstadoTinaco,
                objInstalacion.ObsTinaco,
                objInstalacion.EstadoCalentador,
                objInstalacion.ObsCalentador,
                objInstalacion.EstadoLavadero,
                objInstalacion.ObsLavadero,
                objInstalacion.EstadoCisterna,
                objInstalacion.ObsCisterna,
                objInstalacion.EstadoFosaSeptica,
                objInstalacion.ObsFosaSeptica,
                objInstalacion.Inmueble.Avaluo.IdAvaluo);
            return RegistrosAfectados == 0 ? false : true;
        }

        public bool EliminaInstalacion(clsInstalacion_CRN objInstalacion)
        {
            int RegistrosAfectados = TAInstalaciones.EliminaInstalacion(
                objInstalacion.Inmueble.Avaluo.IdAvaluo);
            return RegistrosAfectados == 0 ? false : true;
        }
    }
}
